The following files are included in the folder, "New cdev messages", to accomodate a "cursorDev" message as sent from the Control Panel. A cdev will receive cursorDev messages if the Control Panel finds a cursor with ID = -4064 in the cdev file. FILE MODIFICATION cdev.h added: void DoCursor(void); /* "cursorDev" method */ cdev class.c added: void cdev::DoCursor(){/* a stub for this message */ } DeviceMgr.h added "cursorDev" to the cdev message types When creating a new class of "cdev", you can now implement a "DoCursor" method to do special cursor handling. When you change DeviceMgr.h you will have to recompile MacHeaders. Make sure cdev.h and cdev class.c are in your THINK C folder. Programming note: HELP!!! Does anyone know the usage of control calls for a 'scrn' resource? i.e. What does the parmBlk field contain as it's data? When is it used? Why is it used? Is it used? Does anyone have a 'scrn' resource that contains data in this field? If so, what configuration is your machine? Look at the 'MakePerm' function in 'PixelFlipperINIT.c' file and see if I'm doing things right. Other notes: The project is setup to NOT check pointer types in the OptionsÉ dialog. I guess that is the main advantage of "C", and the main reason I switched from Pascal to "C". To build the INIT/cdev first make the changes above, then build the cdev, and then build the INIT. Pop it in your system folder and goÉ Chris Sanchez @ 411 Laurel Suite 2280 Des Moines, IA 50314 (515) 247-8690 OR 630 Barr Drive Des Moines, IA 50010 e-mail @ MouseHole BBS (MacTutor) (408) 738-5791 send mail to "Opus" @ CIS [76547,1254] @ America Online "BBun"